The present invention relates to a car built-in type one-chip microcomputer and a program developing apparatus for developing a program for such a car built-in type one-chip microcomputer.
Microcomputers are used in cars for ignition and fuel control for engines, air conditioner control, transmission control, active suspension control, brake control, etc., and it is general that a car built-in type one-chip microcomputer is provided for exclusive use for every control function. For example, Japanese Patent Publication No. Sho-63-11169 discloses such a car built-in type one-chip microcomputer for use for air conditioner control, a control program for the car built-in type one-chip microcomputer being formed in accordance with an electronic circuit designed for control. Such a control program for a car built-in type one-chip microcomputer is generally stated in an assembly language (or a machine language). This is mainly for the following two reasons:
(1) The limitation in capacity of memories (ROM and RAM), is severe; and PA1 (2) A high processing speed is required. PA1 (1) It is difficult for programmers, other than few programmers capable of treating an assembly language, to form and change a control program, and it takes a long time for verification of the control program. PA1 (2) Since an assembly language has no compatibility between microcomputers different in architecture from each other, it is necessary to reform the whole program when the kind of a microcomputer is changed, and in order to modify or change a program it is necessary to provide equipment having an architecture the same as that of the microcomputer in which the program is being used. This makes it difficult to immediately change a program which is being subject an operation test in a laboratory or in outdoor laboratory work. PA1 (3) It is difficult to record data in a microcomputer in laboratory work for operation verification and to incorporate a function for externally indicating the data into the microcomputer because of the limitation of the memory capacity, and therefore it is difficult to verify the response property and to determine the specification. PA1 (4) Since a program developing apparatus is generally different in architecture from final products of microcomputers, it is necessary to change a part (particularly a part relating to input/output processing) of a program which has been subject to operation verification on the program developing apparatus, at the time when the program is incorporated into the final products. Accordingly, not only the workability, but also the reliability of the program may be lowered.
As for the reason (1), the requirement to reduce the cost of car parts is extremely strong, and, therefore, as microcomputers inexpensive 4-bit or 8-bit car built-in type one-chip microcomputers have been used. However, only a small capacity of ROM and RAM can be incorporated in a one-chip microcomputer because of the limitation in the degree of integration of the car built-in type one-chip microcomputer, and it is necessary to state a program in an assembly language so that the program could be minimized and the RAM could be used effectively, in order to satisfy a necessary control specification. If other ROM and RAM are additionally provided on another external chip in order to avoid the limitation of the memory capacity, it becomes necessary to prepare a space for an addressing IC, a wiring pattern on a printed circuit board for connection between the chips, and so on, in addition to the space for the additionally provided ROM and RAM, resulting in an increase in the number of parts, an increase in the size of the control circuit, and an extreme increase in the cost.
As for the reason (2), on the other hand, the processing speed is relatively low in the conventional microcomputer, and, therefore, as the number of steps of a program increases, the time required for one round of a main program becomes longer, and the response property of a control system becomes more deteriorated. The time taken for one round of a main program is affected by a configuration system of an interruption processing program, and in not a few cases it takes about 0.5 seconds actually for one round of a main program. Also in order to improve the response property of a control system, accordingly, it was required to reduce the number of steps for one round of a program to as small a number as possible, and it was necessary to use an assembly language by which the program could be minimized and a high processing speed could be obtained.
On one hand, an assembly language has an advantage that the program to be executed can be made compact so that the memory capacity can be reduced and the processing speed can be made high. On the other hand, the assembly language has disadvantages that the work of programming is complicated, the meaning of the program is difficult to understand, the number of lines of the program list is large, and so on, because it is necessary to form the program by stating the hardware operation step by step. Accordingly, there arise the following problems.